 _________  ___  ___  ________  ________   ___  __       
|\___   ___|\  \|\  \|\   __  \|\   ___  \|\  \|\  \     
\|___ \  \_\ \  \\\  \ \  \|\  \ \  \\ \  \ \  \/  /|_   
     \ \  \ \ \   __  \ \   __  \ \  \\ \  \ \   ___  \  
      \ \  \ \ \  \ \  \ \  \ \  \ \  \\ \  \ \  \\ \  \ 
       \ \__\ \ \__\ \__\ \__\ \__\ \__\\ \__\ \__\\ \__\
  ___   \|__|__\|__|\|__|\|__|\|__|\|__| \|__|\|__| \|__|
 |\  \  /  /|\   __  \|\  \|\  \|\  \                    
 \ \  \/  / \ \  \|\  \ \  \\\  \ \  \                   
  \ \    / / \ \  \\\  \ \  \\\  \ \  \                  
   \/  /  /   \ \  \\\  \ \  \\\  \ \__\                 
 __/  / /      \ \_______\ \_______\|__|                 
|\___/ /        \|_______|\|_______|   ___               
\|___|/                               |\__\              
                                      \|__|              

ExtendedLSC [ ELSC ] [ Vanilla overhaul / Colored Windows / Manual Transmission / Tuning / Stancing / Open Source / Modding Tool ]
Created By: TabbedScamper
Screenshots by: TabbedScamper
================================================================================================

A single-player script that rebuilds Los Santos Customs from the ground up. An authentic LSC experience with a stack of optional power-user features layered on top, for BOTH GTA V Legacy AND Enhanced (one DLL auto-detects your edition).

>> DESIGNED CONTROLLER-FIRST. ELSC was built and tuned around a CONTROLLER. Keyboard & mouse is fully supported, but it's the secondary scheme controller is the intended way to play.

------------------------------------------------------------------------------------------------
*** THIS IS MY FIRST SCRIPT MOD ***
------------------------------------------------------------------------------------------------
ELSC is the first script (.NET/SHVDN) mod I've made — everything before this was vehicles. It's a big, ambitious project that touches a lot of the game, so there ARE going to be bugs and rough edges, especially on different setups and resolutions. I'll fix issues as they roll in, so please report anything you hit (with as much detail as you can) and I'll get to it. Thanks for your patience while it matures.

It's also fully OPEN SOURCE — build it yourself, learn from it, or send fixes:
    https://github.com/TabbedScamper/ExtendedLSC

------------------------------------------------------------------------------------------------
FEATURES
------------------------------------------------------------------------------------------------
The mod is built as a "Main Course + Side Course." The Main Course is always on; every Side Course feature can be toggled in settings.ini (set them all to false for a pure LSC clone).

  MAIN COURSE (the core LSC clone - always on)
    - Faithful Los Santos Customs menu recreation
    - Real performance stat bars (Top Speed / Acceleration / Braking / Traction) read straight
      from the car's handling, plus a live Performance Index
    - Mod preview on hover (see the part before you buy)
    - Per-vehicle ownership tracking with car sprite icons
    - A pile of quality-of-life improvements over the vanilla LSC menu

  SIDE COURSE (optional - toggle in settings.ini)
    - Custom Camera .......part-focused camera presets + a full walk-around / free-roam cam
    - Extended Categories ... engine swaps (swaps the SOUND and power), extras, etc...
    - Vehicle Packages ...... save & load complete mod presets per car
    - Vehicle Tuning ........ live handling editing with sliders
    - Wheel Fitment / Stance  per-axle camber, track/poke, height, and wheel size + width
    - Manual Transmission ... a per-vehicle manual gearbox with clutch, rev limiter, shift feel, exhaust pops, and optional nitrous
    - Light Customization ... headlight + neon color and brightness
    - Window Glass Color ... custom window tints (needs optional Glass DLC, see below)
    - Speedometers .......... several styles, customizable colors
    - Customize Radio ....... loop YOUR OWN mp3/wav files (drop them in scripts\ExtendedLSC\radio)
    - Idle Cinematic ........ a showcase orbit camera after a few seconds of no input
    - Keep Steering Angle ... the front wheels stay turned where you left them on exit

------------------------------------------------------------------------------------------------
FOR MODDERS  —  SHIP A CUSTOM MENU WITH YOUR VEHICLE OR WHEEL PACK
------------------------------------------------------------------------------------------------
ELSC isn't only for players — it's a framework for creators. If you build add-on cars or wheel packs, ELSC lets you organize YOUR custom parts into your OWN named categories in the Los Santos Customs menu (instead of the generic flat slot list), with custom names and prices, and ship that layout as a tiny folder that auto-loads for your vehicle. No more "Spoiler / Spoiler 1 / Spoiler 2" — give your parts real names like "Widebody Kit" or "Baja Bumpers."

  - IN-GAME EDIT MODE (no code): set EditorMode = true in settings.ini, open the menu (F5), press F6. Add named categories, pick parts from the game slots, rename them, set prices, and hide the default categories you don't want. It all saves to scripts\ExtendedLSC\Vehicles\{yourCar}\ automatically — just zip that folder and ship it next to your vehicle.

  - OR HAND-WRITE THE JSON (a folder per category + items.json) for full control and nesting.

  - WHEEL-PACK MAKERS: ship named wheel categories that appear on EVERY car. The included B-RIMS categories (scripts\ExtendedLSC\Universal\) are a working example.

  - The included PURE quad menu (scripts\ExtendedLSC\Vehicles\) is a ready-made per-vehicle example.

  Full modder guide with the JSON format: docs\CUSTOM-MENUS.md in the GitHub repo.

------------------------------------------------------------------------------------------------
RECOMMENDED COMPANION MODS  (they power the example menus already inside ELSC)
------------------------------------------------------------------------------------------------
ELSC already ships with ready-made ELSC menus for two of my other mods — working showcases of the custom-menu framework above. Install them (both are free, Legacy + Enhanced) and the menus fill up with real content, no setup:

B-Rims (368 Rim Pack)
    https://www.gta5-mods.com/vehicles/b-rims-368-rim-pack-baked-texture-version-enhanced-legacy
 ELSC includes pre-built wheel categories for this pack. Install B-Rims and all 368 rims appear sorted into named categories on EVERY car in ELSC — that's what the included
scripts\ExtendedLSC\Universal\ menus are for.

PURE (250 Parts Add-On)
    https://www.gta5-mods.com/vehicles/pure-250-parts-add-on-enhanced-legacy
    ELSC includes a ready-made custom menu for the PURE add-on car. Install PURE and its 250+ parts drop into clean named categories — a live example (scripts\ExtendedLSC\Vehicles\) of exactly what YOU can build and ship for your own vehicle.

------------------------------------------------------------------------------------------------
REQUIREMENTS
------------------------------------------------------------------------------------------------
  GTA V (story mode) - Legacy OR Enhanced
  .NET Framework 4.8 (built into Windows 10/11)
  Visual C++ 2019 x64 Redistributable

  *** TESTED / KNOWN-GOOD VERSIONS (Legacy) ***
    - GTA V Legacy build           1.0.3788.0  (v3788)
    - ScriptHookV                  the build for v3788 (Apr 2026)
    - ScriptHookVDotNet 3          NIGHTLY  v3.7.0.167  (API 3.7.0)
      >> IMPORTANT: the STABLE 3.6.0 release was NOT enough for me — I had to use the SHVDN 3 NIGHTLY to get it to load. If ELSC won't load, an out-of-date ScriptHookVDotNet is the #1 cause. 

Nightly builds: 
https://github.com/scripthookvdotnet/scripthookvdotnet/releases

  GTA V LEGACY:
    - ScriptHookV (Alexander Blade)        http://www.dev-c.com/gtav/scripthookv/
    - ScriptHookVDotNet 3 (crosire)        https://www.gta5-mods.com/tools/scripthookv-net
      (use the NIGHTLY — see the tested versions above)

  GTA V ENHANCED:
    - ScriptHookV for Enhanced (Alexander Blade)
    - Script Hook V .NET Enhanced          
      https://www.gta5-mods.com/tools/script-hook-v-net-enhanced
      (place ScriptHookVDotNet.asi + the .dll/.ini AND MinHook.x64.dll in your game folder)

------------------------------------------------------------------------------------------------
INSTALL  (the script - same for both editions)
------------------------------------------------------------------------------------------------
1: Copy everything inside this "scripts" folder into your game's "scripts" folder:

       scripts\ExtendedLSC.dll
       scripts\LemonUI.SHVDN3.dll
       scripts\NAudio.dll
       scripts\Newtonsoft.Json.dll
       scripts\ExtendedLSC\     (the data folder - banner, speedos, wheel/vehicle menus, etc.)

   >> DON'T HAVE A "scripts" FOLDER?  Create one. Make a new folder named exactly  scripts  next to GTA5.exe (the same folder that has ScriptHookV.dll), then copy the files above into it.

2: Launch story mode and drive into any Los Santos Customs — ELSC opens AUTOMATICALLY, right where the vanilla LSC menu would. No key needed.

   Want to open it anywhere (not just at an LSC shop)? Set  OpenAnywhere = true  in
   scripts\ExtendedLSC\settings.ini, then open the menu wherever you are with:
        CONTROLLER:  RB + B          KEYBOARD:  F5

   F7 = modder / debug tools.   All other keys + toggles are in settings.ini.

------------------------------------------------------------------------------------------------
OPTIONAL: Glass DLC  (for VIVID window colors)
------------------------------------------------------------------------------------------------
The Window Glass Color feature works without this, but vanilla glass is near-black so the color comes out muddy. This add-on DLC whitens the tintable glass panes (windshield kept clear) so your chosen color shows vividly. It overrides nothing permanently and is fully removable.

  LEGACY:
    1: Drag the "Glass DLC (Optional)\Legacy\elsc" folder into  mods\update\x64\dlcpacks\
    2: In OpenIV, open  mods\update\update.rpf\common\data\dlclist.xml  (Edit Mode)
    3: Add this as the LAST line before </Paths>:   <Item>dlcpacks:/elsc/</Item>
    4: Save, launch, set a window colour in ELSC.

  ENHANCED (requires OpenRPF)
   https://www.gta5-mods.com/tools/openrpf-openiv-asi-for-gta-v-enhanced:
    1: Install OpenRPF, and disable BattlEye in the Rockstar launcher.
    2: Drag the "Glass DLC (Optional)\Enhanced\elsc" folder into mods\update\x64\dlcpacks\
    3: Open your dlclist.xml and add as the LAST line before </Paths>
    <Item>dlcpacks:/elsc/</Item>
    (LAST is important - it must load after the game's own patches to take effect.)
    4: Save, launch, set a window color in ELSC.

------------------------------------------------------------------------------------------------
ANTIVIRUS
------------------------------------------------------------------------------------------------
Like every memory-editing SHVDN mod, ELSC can trip a false positive (it reads/writes the game's own memory to do things the natives can't). It is single-player only and makes NO network connections. Add your GTA folder to your AV exclusions, or build the DLL yourself from the source.

------------------------------------------------------------------------------------------------
REUPLOADING & CONTRIBUTIONS  (please read)
------------------------------------------------------------------------------------------------
- NO REUPLOADS WITHOUT PERMISSION. Do not reupload this mod, or any modified / edited version of it (code changes included), to any site or as part of any pack without my explicit permission. The source is public so you can learn from it, build it yourself, and contribute fixes NOT so it can be re-hosted, re-bundled, or re-released as your own.

- CONTRIBUTIONS ARE FULLY CREDITED. If you come up with a fix for an issue and I use it, you'll be fully credited (here in the changelog and on the mod page) and the mod will be updated. Send fixes through the GitHub repo (open an issue or a pull request):
https://github.com/TabbedScamper/ExtendedLSC

------------------------------------------------------------------------------------------------
CHANGELOG
------------------------------------------------------------------------------------------------
1.0
- First public release (Legacy + Enhanced)
- Core LSC clone, stat bars, ownership tracking
- Side Course: custom camera, extended categories/engine swaps, packages, tuning, wheel fitment, manual transmission, light/neon, window glass colour, speedometers, custom radio
- Optional Glass DLC for vivid window colours (Legacy + Enhanced builds)

1.1
Focused on cutting ExtendedLSC's per-frame overhead — gentlest on lower-end CPUs. These are pure script-side optimizations and apply to BOTH Legacy and Enhanced (no edition-specific code changed):

- Removed redundant per-frame work building the mod's internal per-vehicle save tags (plates, window tint, snapshots):
     * the vehicle DISPLAY-NAME lookup (the heaviest one) is now resolved once and 
       cached removed from the per-frame path entirely;
     * the vehicle MODEL lookup is cached per frame (about 70% fewer of those calls).
- Removed a per-frame memory allocation in the stance system (a garbage-collection / stutter source).
- The player's current vehicle is now resolved once per frame instead of several times.
- Net: roughly 10 fewer engine calls per frame in normal play.

  If you STILL get frame drops on 1.1, please report it (with your specs)

------------------------------------------------------------------------------------------------
FUTURE PLANS
------------------------------------------------------------------------------------------------
- Squash bugs as they're reported (top priority)
- More speedometer styles + deeper customization
- Expand the modder "edit mode" for re-shelving custom parts into named categories
- Broader controller support / remap polish

------------------------------------------------------------------------------------------------
Thank you for downloading my first script mod. Report issues on the GitHub page and I'll work through them. I've got more in development, so check back on my page.
- TabbedScamper